home *** CD-ROM | disk | FTP | other *** search
- Date: Sun, 30 Jan 94 06:33:53 PST
- From: hyc@hanauma.jpl.nasa.gov (Howard Chu)
- Message-Id: <9401301433.AA03929@hanauma.jpl.nasa.gov>
- To: mint@atari.archive.umich.edu
- Subject: Millisecond-based alarm
-
- I found Talarm to be pretty reliable, but I needed finer resolution, so I've
- added a Tmalarm that doesn't convert to seconds, etc. Talarm just calls
- Tmalarm now. It seems like a useful addition, what do you folks think?
- *** 1.1 1994/01/30 14:11:23
- --- dos.c 1994/01/30 14:29:10
- ***************
- *** 360,363 ****
- --- 360,378 ----
- {
- long oldalarm;
- + oldalarm = t_malarm(x*1000);
- + oldalarm = (oldalarm+999) / 1000; /* convert to seconds */
- + return oldalarm;
- + }
- +
- + /*
- + * t_malarm(x): set the alarm clock to go off in "x" milliseconds. returns
- + * the old value ofthe alarm clock
- + */
- +
- + long ARGS_ON_STACK
- + t_malarm(x)
- + long x;
- + {
- + long oldalarm;
- TIMEOUT *t;
-
- ***************
- *** 378,383 ****
- }
-
- - oldalarm = (oldalarm+999) / 1000; /* convert to seconds */
- -
- /* we were just querying the alarm */
- if (x < 0)
- --- 393,396 ----
- ***************
- *** 388,394 ****
- canceltimeout(curproc->alarmtim);
-
- ! /* add a new alarm, to occur in 1000*x milliseconds */
- if (x)
- ! curproc->alarmtim = addtimeout(1000*x, alarmme);
- else
- curproc->alarmtim = 0;
- --- 401,407 ----
- canceltimeout(curproc->alarmtim);
-
- ! /* add a new alarm, to occur in x milliseconds */
- if (x)
- ! curproc->alarmtim = addtimeout(x, alarmme);
- else
- curproc->alarmtim = 0;
- ***************
- *** 589,591 ****
- --- 602,605 ----
- dos_tab[0x13b] = d_getcwd;
- dos_tab[0x13c] = s_alert;
- + dos_tab[0x13d] = t_malarm;
- }
- *** 1.3 1994/01/30 13:04:54
- --- proto.h 1994/01/30 14:22:44
- ***************
- *** 86,89 ****
- --- 86,90 ----
- long ARGS_ON_STACK p_pause P_((void));
- long ARGS_ON_STACK t_alarm P_((long x));
- + long ARGS_ON_STACK t_malarm P_((long x));
- long ARGS_ON_STACK s_ysconf P_((int which));
- long ARGS_ON_STACK s_alert P_((char *msg));
-